﻿var Helper = (function () {
    var api = {};

    api.PushAllHelper = function () {
        var $helper = $('.dropdown-menu', '#helper');
        $helper.children('.help').remove();
        $('div[id^=help]').popover('destroy');
        $('div[id^=help]').remove();

        $('*[data-help]:visible').each(function (i, dom) {
            var $dom = $(dom);
            
            //生成帮助锚点
            var id = new Date().getTime();
            var $div = $('<div />').attr('id', 'help' + id)
                .addClass('help')
            $dom.append($div);
                        
            $div.popover({
                html: true,
                placement: 'auto top',
                title: '<i class="icon-question-sign"></i>&nbsp;Help Info',
                content: $dom.data('help'),
                container: 'body'
            });

            //生成帮助超链接
            var $a = $('<a />').attr('href', '#help')
                .data({
                    "location-x": $dom.offset().left,
                    "location-y": $dom.offset().top
                })
                .html($dom.data('help'))
                .click(function () {
                    var $this = $(this);
                    
                    $div.popover('show');
                    setTimeout(function () {
                        $div.popover('hide');
                    }, 3000);
                });
            var $li = $('<li />').addClass('help')
                .append($a);
            $helper.append($li);
        });

        if ($helper.children().size() == 0) {
            var $li = $('<li />').addClass('help')
                .html('<a href="#" title="使用data-help为控件添加帮助">本页没有帮助文档</a>');
            $helper.append($li);
        }
    }

    return api;
})();

$(window).load(Helper.PushAllHelper);